package org.flexspeedup.blog.models
{
import mx.core.IFlexDisplayObject;

[Bindable]
/**
 * High level app state data
 */
public class ApplicationModel implements IApplicationModel
{
    //--------------------------------------------------------------------------
    //
    // Constructor
    //
    //--------------------------------------------------------------------------

    /**
     * Creates a new instance of this class.
     */
    public function ApplicationModel()
    {
    }

    //--------------------------------------------------------------------------
    //
    //  Properties
    //
    //--------------------------------------------------------------------------

    //----------------------------------
    // currentState
    //----------------------------------
    /**
     * The current view state for the applciation.
     */
    public var currentState:String;
   
    //----------------------------------
    // hasPendingChanges
    //----------------------------------
    /**
     * Means there is a change somewhere in the app that needs to be saved.
     */
    public var hasPendingChanges:Boolean;

    //----------------------------------
    // currentUser
    //----------------------------------
    /**
     * The currently authenticated user.
     */
    public var currentUser:String;

    //----------------------------------
    // currentPopUp
    //----------------------------------
    /**
     * @inheritDoc.
     */
    public var currentPopUp:IFlexDisplayObject;

}
}